package com.seventhdawn.gwt.rcx.client.annotation;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Target;

import com.google.gwt.user.client.rpc.IsSerializable;

/**
 * Specifies additional root types to be included in the serialization policy
 * for the given {@link com.google.gwt.user.client.rpc.RemoteService
 * RemoteService} interface.
 * <p>
 * This annotation enables you to include custom
 * {@link com.google.gwt.user.client.rpc.IsSerializable serializable} roots in
 * addition to root types that appear in your service interface methods
 * (arguments, return types and exceptions).
 * 
 * @author vojtech.szocs
 */
@Documented
@Target(ElementType.TYPE)
public @interface CustomSerializableRoots {

    Class<? extends IsSerializable>[] value();

}
